;
; NT.SH Version 1.01 (C)1995,1996 HUDSON SOFT
; HuC6261(New鉄観音)関連 アセンブラ用ヘッダーファイル(NT.SH)
;
	ifndef	_NT_SH_
_NT_SH_		equ	1
;
bcel		equ	$0001
fcel		equ	$0003
bg		equ	$0100
spr		equ	$0200
bg0		equ	$0400
bg1		equ	$0800
bg2		equ	$1000
bg3		equ	$2000
rain		equ	$4000
alldev		equ	rain+bg3+bg2+bg1+bg0+spr+bg

interlace	equ	%00000011_00000010
line263		equ	%00000011_00000000
line262		equ	%00000011_00000001
shift1by2	equ	%00000011_00000011
ext_sync	equ	%00000100_00000100
inter_sync	equ	%00000100_00000000
mode_7M		equ	%00001000_00001000
mode_5M		equ	%00001000_00000000
mode_bg256	equ	%01000000_01000000
mode_sp256	equ	%10000000_10000000
mode_bg16	equ	%01000000_00000000
mode_sp16	equ	%10000000_00000000
mode_normal	equ	%00001111_00000010
;
;--- Macros
;
	include	"c62dev.sh"
;
_put_nt_ar	macro	regno
		mov.h	regno,at
		out.h	at,IO_NT_AR(zero)
		endm
;
_put_nt_dr	macro	value
		mov.h	value,at
		out.h	at,IO_NT_DR(zero)
		endm
;
_get_nt_dr	macro	reg
		in.h	IO_NT_DR(zero),reg
		endm
;
_ntar		macro	reg
		out.h	reg,IO_NT_AR(zero)
		endm
;
_ntari		macro	regno
		mov.h	regno,at
		out.h	at,IO_NT_AR(zero)
		endm
;
_ntsr		macro	reg
		in.h	IO_NT_SR(zero),reg
		endm
;
_ntdr		macro	reg
		out.h	reg,IO_NT_DR(zero)
		endm
;
_ntdri		macro	value
		mov.h	value,at
		out.h	at,IO_NT_DR(zero)
		endm
;
_ntdrw		macro	reg
		out.w	reg,IO_NT_DR(zero)
		endm
;
_ntdriw		macro	value
		mov.w	value,at
		out.w	at,IO_NT_DR(zero)
		endm
;
_ntdrr		macro	reg
		in.h	IO_NT_DR(zero),reg
		endm
;
_ntdrrw		macro	reg
		in.w	IO_NT_DR(zero),reg
		endm
;
;--- Structs
;
NT_PLO		struct
cpo0:		ds	2
cpo1:		ds	2
cpo2:		ds	2
cpo3:		ds	2
	align	4
		ends
;
NT_PRI		struct
pri0:		ds	2
pri1:		ds	2
	align	4
		ends
;
NT_CRM		struct
crmy:		ds	2
crmu:		ds	2
crmv:		ds	2
	align	4
		ends
;
CELPRM		struct
fixc:		ds	2
celcr:		ds	2
celsp:		ds	2
cel1A:		ds	2
cel1B:		ds	2
cel2A:		ds	2
cel2B:		ds	2
cel3A:		ds	2
cel3B:		ds	2
	align	4
		ends
;
	globl	dispon,dispoff
	globl	init_nt
	globl	set_pallet_offset,write_pallet_datas
	globl	set_nt_pri,set_crm_yuv,set_nt_cel
	globl	cel_on,cel_off,celsp_on,celsp_off
	globl	set_nt_prio
	globl	init_dispon_irq,dispon_req,dispoff_req,dispon_irq
	globl	set_nt_mode
;
	endif	; !_NT_SH_
